﻿using CommunityToolkit.Mvvm.ComponentModel;
using System;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace 模拟器远程控制
{
    public partial class MotionDevice : IMotionDevice
    {
        public MotionDevice() 
        {
            Axes = new ObservableCollection<MotionAxis>();
            Axes.Add(
                new MotionAxis()
                {
                    ID = 1,
                    Name = "方位轴",
                    SinSupport = true,
                    
                }
                );
            Axes.Add(
                new MotionAxis()
                {
                    ID = 2,
                    Name = "俯仰轴",
                    SinSupport = true

                }
                ); ;
            Axes.Add(
                new MotionAxis()
                {
                    ID = 3,
                    Name = "滚转轴"
                }
                );
        }




        public override void Boot()
        {
            throw new NotImplementedException();
        }

        public override void ClearZero(int ID)
        {
            throw new NotImplementedException();
        }

        public override void CycleRun(int ID, double StartPosition, double MinPosition, double MaxPosition, double Step, int StepDelay_ms = 500, int CycleCount = 1)
        {
            throw new NotImplementedException();
        }

        public override void FindZero(int ID)
        {
            throw new NotImplementedException();
        }

        public override void Run(int ID, double Position, double Speed, bool Relative = false)
        {
            throw new NotImplementedException();
        }

        public override void Run(int ID, double Speed)
        {
            throw new NotImplementedException();
        }

        public override void SetLimit(int ID, double UpLimit, double DownLimit)
        {
            throw new NotImplementedException();
        }

        public override void ShutDown()
        {
            throw new NotImplementedException();
        }

        public override void Stop(int ID)
        {
            throw new NotImplementedException();
        }

        public override void TriggerClose(int ID)
        {
            throw new NotImplementedException();
        }

        public override void TriggerOpen(int ID)
        {
            throw new NotImplementedException();
        }

        public override void TriggerSet(int ID, double StartPosition, double EndPosition, double Interval, int PulseWidth_us)
        {
            throw new NotImplementedException();
        }
    }
}
